--设置定时器
time = os.time();

--初始化
init("0",0);
mSleep(3000);
--来电暂停
luaExitIfCall(true);

--初始化日志
initLog("自动脚本1", 0)

--点击函数
function click(n,x,y)
	mSleep(500);
	touchDown(n,x,y);  
	mSleep(50);
	touchUp(n,x,y);
	mSleep(500);
end

function timeOut()
	--如果一段时间内没有检测到，则判断为任务失败，结束脚本。
		if os.time()-time>360 then
			lua_restart();
		end
end

function movettoo(n,x,y,a,b)
	-- body
	touchDown(n, x, y); --在坐标 (150, 550)按下
	mSleep(80);
	touchMove(n, a, b); --移动到坐标 (150, 600)，注意一次滑动的坐标间隔不要太大，不宜超过50像素
	mSleep(80);
	touchUp(n, a, b);   --在坐标 (150, 600) 抬起
end


--点击home键
function home()
	mSleep(500);
	--按下home键退出
	pressHomeKey(0);    --按下 Home 键
	mSleep(50);
	pressHomeKey(1);    --抬起 Home 键
	mSleep(500);
end


--颜色模糊判断
function isColor(x,y,c,s)   --封装函数，函数名 isColor
    local fl,abs = math.floor,math.abs
    s = fl(0xff*(100-s)*0.01)
    local r,g,b = fl(c/0x10000),fl(c%0x10000/0x100),fl(c%0x100)
    local rr,gg,bb = getColorRGB(x,y)
    if abs(r-rr)<s and abs(g-gg)<s and abs(b-bb)<s then
        return true
    end
end


--警告跳过
function warningAll()
	if isColor(325,654,0x007aff,90) then
			wLog("自动脚本1", "[DATE] 这是警告一判断");
			mSleep(2000);
			click(1,325,654);
			mSleep(3000);
			setVPNEnable(true);
			mSleep(1000);
		elseif isColor(329,694,0x007aff,90) then
			wLog("自动脚本1", "[DATE] 这是警告二判断")
			mSleep(2000);
			click(1,329,694);
			mSleep(3000);
			setVPNEnable(true);
			mSleep(1000);
		elseif isColor(327,688,0x007aff,90) then
			wLog("自动脚本1", "[DATE] 这是警告三判断")
			mSleep(2000);
			click(1,327,688);
			mSleep(3000);
			setVPNEnable(true);
			mSleep(1000);
		elseif isColor(327,671,0x007aff,90) then
			wLog("自动脚本1", "[DATE] 这是警告四判断")
			mSleep(2000);
			click(1,327,671);
			mSleep(3000);
			setVPNEnable(true);
			mSleep(1000);
		elseif isColor(340,664,0x007aff,90) then
			wLog("自动脚本1", "[DATE] 这是警告五判断")
			mSleep(2000);
			click(1,340,664);
			mSleep(2000);
		elseif isColor(327,655,0x007aff,90) then
			--鉴定失败
			wLog("自动脚本1", "[DATE] 这是警告六判断")
			mSleep(2000);
			click(1,327,655);
			mSleep(2000);	
			setVPNEnable(true);
			mSleep(1000);
	end
end


--iOS9新版本newVPN
function newVPN()

	home();
	mSleep(1000);
	
	cleanAll();
	mSleep(1000);
	
	--第一步关闭vpn
	setVPNEnable(false);
	mSleep(3000);
	
	--在vpn图标位置取个色方便下面比较
	local color = getColor(88, 11);
	
	--第三步开启vpn
	setVPNEnable(true);
	
	--进入while循环判断是否开启
	while (true) do
		mSleep(4000);
		--此处为弹出警告点击确定跳过
		warningAll();
		
		--判断是否需要输入vpn密码
		if isColor(389,  233, 0x000000,90) then
			mSleep(500);
			click(1,257,376);
			mSleep(1000);
			--输入“统一”密码
			inputText("963");
			mSleep(1000);
			--点击确定
			click(1,457,477);
			mSleep(500);
		end
		
		--超过3分钟自动重新开始
		timeOut();
		
		--取色准备判断是否成功打开
		local colorTwo = getColor(88, 11);
		
		wLog("自动脚本1", "[DATE] 进入循环判断是否开启vpn！！！！！！！！！！！！！！！！！！！！")
		if colorTwo~=color then
			wLog("自动脚本1", "[DATE] 此时判断vpn已经开启，跳出循环,按下home键");
			--确认vpn打开后退出
			mSleep(2000);
			break;
		end
		
		--循环等待
		wLog("自动脚本1", "[DATE] ！！！！！！！！！！！！！！");
	
	end 
end



--进入下一条记录
function nextMemory()
	--初始化
	init("0",0);
	mSleep(1000);
	
	--进入NZT进行手机一键新机，重复打开4遍，防止闪退，闪退率高
	r = runApp("NZT"); 
	mSleep(2000)
	r = runApp("NZT");
	mSleep(2000)
	r = runApp("NZT");
	mSleep(2000)
	r = runApp("NZT"); 
	mSleep(2000);
	if r ~= 0 then
		lua_restart();
	end
	wLog("自动脚本1","[DATE] 进入NZT软件");
	mSleep(1000);
	
	--点一下返回按钮
	click(1,39,82);
	mSleep(2000);
	
	--点击参数记录
	click(1,145,958);
	
	mSleep(3000); 
	--点击下一条记录
	click(1,575,85);
	mSleep(2000);
	
	while (true) do
		wLog("自动流程1","[DATE] 成功点击下一条记录按钮进入while判断");
		--如果出现错误，点击确定
		warningAll();
		if isColor(321,545,0x434343,90) then
			mSleep(2000);
		elseif isColor(321,545,0xffffff,90) then
			break;
		end
		
		--超过3分钟自动重新开始
		timeOut();
	end
	
	mSleep(1000);
	--按下home键退出
	home();
	mSleep(1000);

	
	wLog("自动流程1", "[DATE] 成功进入下一条记录")
end


function play()

	mSleep(2000);
	
	r = runApp("com.gbits.atm.ios");    --启动应用
	if r == 0 then
		wLog("自动流程1", "[DATE] 应用启动成功");
		
		--dialog("进入游戏了", 3)
		mSleep(5000);
		
		--初始化为横屏模式
		init("0",1);
		mSleep(1000);
	 
		while (true) do

			--更新确认
		if isColor(690, 402, 0xc1e2dc,90) then
			mSleep(500);
			click(1,690, 402);
			mSleep(500);
		end
		
		--更新完成确认
		if isColor(580, 407, 0x7daa9e,90) then
			mSleep(500);
			click(1,580, 407);
			mSleep(500);
		end
		
		--协议同意
		if isColor(870, 543, 0x5c8779,90) then
			mSleep(500);
			click(1,870, 543);
			mSleep(500);
		end
		
		--协议同意
		if isColor(970, 57, 0xf2e6c2,90) then
			mSleep(500);
			click(1,970, 57);
			mSleep(500);
		end
		
		--超过3分钟自动重新开始
		timeOut();
		
		--游客模式
		if isColor(852, 383, 0x4f91e2,90) then
			mSleep(500);
			click(1,852, 383);
			mSleep(500);
		end
		
		--同意并使用游客模式登陆
		if isColor(369, 506, 0xadcffc,90) then
			mSleep(500);
			click(1,369, 506);
			mSleep(500);
		end
		
		--数据恢复未完成，无法登陆
		if isColor(677, 403, 0xa3c2bb,90) then
			mSleep(500);
			click(1,677, 403);
			mSleep(1500);
		end
		
		
		--进入游戏
		if isColor(563, 506, 0xe3f1ec,90) then
			mSleep(500);
			click(1,563, 506);
			mSleep(500);
		end
		
		--随机一个姓名
		if isColor(741, 579, 0xf1b296,90) then
			mSleep(500);
			click(1,741, 579);
			mSleep(3500);
		end
		
		--超过3分钟自动重新开始
		timeOut();
		
		--创建角色
		if isColor(956, 567, 0x5f5347,90) then
			mSleep(500);
			click(1,956, 567);
			mSleep(500);
		end
		
		--点击任意地方继续
		if isColor(128, 70, 0x342e27,90) then
			mSleep(500);
			click(1,128, 70);
			mSleep(500);
		end
		
		--点击这里展开技能
		if isColor(1082, 376, 0xca9665,90) then
			mSleep(500);
			click(1,1082, 376);
			mSleep(3500);
		end
		
		--点击选择法术
		if isColor(1068, 357, 0xae5282,90) then
			mSleep(500);
			click(1,1068, 357);
			mSleep(500);
		end
		
		--超过3分钟自动重新开始
		timeOut();
		
		--点击选择目标
		if isColor(323, 228, 0xfb5966,90) then
			mSleep(500);
			click(1,323, 228);
			mSleep(500);
		end
		
		--点击选择法术
		if isColor(749, 446, 0x6e6e49,90) then
			mSleep(500);
			click(1,749, 446);
			mSleep(500);
		end
		
		--点击选择法术
		if isColor(991, 362, 0xf3edf9,90) then
			mSleep(500);
			click(1,991, 362);
			mSleep(500);
		end
		
		--跳过
		if isColor(997, 70, 0x665946,90) then
			mSleep(500);
			click(1,997, 70);
			mSleep(500);
		end
		
		--超过3分钟自动重新开始
		timeOut();
		
		--选择主线任务
		if isColor(916, 163, 0x434241,90) then
			mSleep(500);
			click(1,916, 163);
			mSleep(500);
		end
		
		--选择任务
		if isColor(1083, 395, 0xf4e8d7,90) then
			mSleep(500);
			click(1,920, 398);
			mSleep(500);
		end
		
		--装备
		if isColor(980, 508, 0x99d1c5,90) then
			mSleep(500);
			click(1,980, 508);
			mSleep(500);
		end
		
		end
 	
		dialog("Game Over", 5);
		
	else
		dialog("启动失败",3);
		--游戏启动失败，结束脚本
		lua_restart(); 
	end
	
	
end

--清理后台
function cleanAll()
	
	--新方法
	closeApp("*",1);
	wLog("自动脚本1", "[DATE] 清理后台");
	
end


function main()
	mSleep(1000);
	
	newVPN();
	mSleep(3000);
	
	nextMemory();
	mSleep(3000);
	
	play();
	
	
end



main();

